TQARenderEnd
A drawing engine must define a method to signal the end of any rendering into a draw context.
typedef TQAError (*TQARenderEnd) ( const TQADrawContext *drawContext, const TQARect *modifiedRect);
drawContext
- A draw context.
modifiedRect
- The minimum area of the back buffer of the specified draw context to display, or the value
NULL
.DESCRIPTION
YourTQARenderEnd
function should perform any operations necessary to display an image rendered into the draw context specified by thedrawContext
parameter. If the draw context is double buffered, your function should display the back buffer. If the draw context is single buffered, your function should callQAFlush
. In either case, your drawing engine should unlock any frame buffers or other memory that is locked, remove any cursor shields, and so forth.The
modifiedRect
parameter indicates the minimum area of the back buffer of the specified draw context that should be displayed. If the value of themodifiedRect
parameter isNULL
, the entire back buffer is displayed. If the value of themodifiedRect
parameter is notNULL
, it indicates the rectangle in the back buffer to display. Some drawing engines may exhibit improved performance when an area that is smaller than the entire draw context rectangle is passed (to avoid unnecessary pixel copying). However, the interpretation of themodifiedRect
parameter is dependent on the drawing engine, which may choose to draw the entire back buffer.Your
TQARenderEnd
function should return a result code (of typeTQAError
) indicating whether any errors have occurred since the previous call to yourTQARenderStart
function. If all rendering commands completed successfully, you should return the valuekQANoErr
. If you return any other value, the code that calledQARenderEnd
should assume that the rendered image is incorrect.SPECIAL CONSIDERATIONS
Applications should callQARenderStart
before performing any rendering operations in the specified draw context, and they should call eitherQARenderEnd
to signal the end of rendering operations orQARenderAbort
to cancel rendering operations. Once an application has calledQARenderEnd
, it should not submit any drawing requests until it has calledQARenderStart
again.